/**
 * 
 */
package t4j.innerclasses;

/**
 * @author sz
 *
 * create time：2012-9-24
 */

class D{}

abstract class E{}

class Z extends D{
	E makeE(){ return new E(){}; }
}

public class MultiImplementation {

	static void takesD(D d){}
	
	static void takesE(E e){}
		
	public static void main(String[] args) {
		Z z = new Z();
		
		takesD(z);
		
		takesE(z.makeE());
	}

}
